﻿Imports System.Data.OleDb
Imports SASObjectManager
Imports PTIC_Util

''' <summary>
''' Univers de travail
''' </summary>
''' <remarks></remarks>
<Serializable()> Public Class UniversBDD
    Implements IUniversBDD

    ''' <summary>
    ''' Constructeur
    ''' </summary>
    ''' <remarks></remarks>
    Public Sub New(ByVal ConnectionSAS As IConnection)
        m_Connection = ConnectionSAS
    End Sub
    Public Sub Initialize() Implements OMANE.Common.IService.Initialize
        m_collTraitements = New Dictionary(Of String, ITraitement)
        m_BDDlocale = New DataSet()
    End Sub

    Public Sub Reset() Implements IUniversBDD.Reset
    End Sub

    Private m_Connection As IConnection
    ''' <summary>
    ''' 
    ''' </summary>
    ''' <remarks></remarks>
    Public ReadOnly Property Connection() As IConnection Implements IUniversBDD.Connection
        Get
            Return m_Connection
        End Get
    End Property

    Private m_collTraitements As Dictionary(Of String, ITraitement)
    Public ReadOnly Property ListeTraitements As Dictionary(Of String, ITraitement) Implements IUniversBDD.ListeTraitements
        Get
            Return m_collTraitements
        End Get
    End Property

    Private m_BDDlocale As DataSet
    Public ReadOnly Property DataSet As DataSet Implements IUniversBDD.DataSet
        Get
            Return m_BDDlocale
        End Get
    End Property

#Region "IDisposable Support"
    Private disposedValue As Boolean ' Pour détecter les appels redondants

    ' IDisposable
    Protected Overridable Sub Dispose(ByVal disposing As Boolean)
        If Not Me.disposedValue Then
            If disposing Then
                ' TODO: supprimez l'état managé (objets managés).
            End If

            ' TODO: libérez les ressources non managées (objets non managés) et substituez la méthode Finalize() ci-dessous.
            ' TODO: définissez les champs volumineux à null.
        End If
        Me.disposedValue = True
    End Sub

    ' TODO: substituez Finalize() uniquement si Dispose(ByVal disposing As Boolean) ci-dessus comporte du code permettant de libérer des ressources non managées.
    'Protected Overrides Sub Finalize()
    '    ' Ne modifiez pas ce code. Ajoutez du code de nettoyage dans Dispose(ByVal disposing As Boolean) ci-dessus.
    '    Dispose(False)
    '    MyBase.Finalize()
    'End Sub

    ' Ce code a été ajouté par Visual Basic pour permettre l'implémentation correcte du modèle pouvant être supprimé.
    Public Sub Dispose() Implements IDisposable.Dispose
        ' Ne modifiez pas ce code. Ajoutez du code de nettoyage dans Dispose(ByVal disposing As Boolean) ci-dessus.
        Dispose(True)
        GC.SuppressFinalize(Me)
    End Sub
#End Region

End Class